//
//  TransfersQueue.h
//  SolarSeek
//
//  Created by Erick Fejta on 05/03/05.
//  Copyright 2005 Erick Fejta. All rights reserved.
//

#import <Cocoa/Cocoa.h>

#import "EnumTypes.h"

@class Transfer;

@interface TransfersQueue : NSObject {
	NSMutableArray *_queue;
	NSMutableSet   *_transfersExiting;
	Transfer	   *_transferExiting;
	QueueType		_type;
}


- (Transfer *)transferExiting;

- (unsigned)countTransfersQueued;
- (unsigned)countTransfersExitingTotal;
- (unsigned)countCeilingTransfersExitingTotal;

- (BOOL)queueTransfer:(Transfer *)transfer;
- (void)dequeueTransfer:(Transfer *)transfer;
- (unsigned)placeInQueue:(Transfer *)transfer;
- (void)exemptTransfer:(Transfer *)transfer;
@end
